The digital currency Bitcoin employs a public ledger that captures all transactions occurring in the digital currency system in a chain of blocks. Each block added to the chain validates the transactions by compressing a Merkle root of the transactions along with information including a time stamp, a version, a target, and a hash of the previous block. The process of validating transactions and computing new blocks of the chain is known as mining.
Bitcoin mining includes the computationally expensive task of finding a 32-bit nonce, which is a value which, when appended to the Merkle root, the previous hash, and other headers, produces a 256-bit hash value using The Secure Hash Algorithm (SHA) 256 (SHA-256) that is less than a pre-determined threshold value. The SHA-256 based hashing operation may be the largest recurring cost incurred in the mining process.